FreeMarker,在循环中获取Map集合key值遇到的问题

您所在的位置:网站首页 freemarker map put FreeMarker,在循环中获取Map集合key值遇到的问题

FreeMarker,在循环中获取Map集合key值遇到的问题

#FreeMarker,在循环中获取Map集合key值遇到的问题| 来源: 网络整理| 查看: 265

文章目录 前言一、问题详情二、问题处理

前言

项目中使用的FreeMarker版本为2.3.30,在获取后端Map集合中的数据时,发现循环取出的Key值内包含Map集合本身的方法,希望大家在使用FreeMarker获取Map集合数据时避免这个问题。

一、问题详情

数据封装在一个Map集合中,key值是String类型,value是一个List集合。 使用ModelMap把数据交给视图控制器,进行前端页面生成。 最开始在模板中使用以下代码进行取值:

${map[key]}

发现页面上没有正确显示数据,在debug过程中,确认后台数据封装没问题,于是在前端页面上单独对Map集合的key值进行循环打印,如下图: 循环出来的key值 仅“sku2”和“sku430”是我所需要的key值,其他都是Map对象内自带的方法。

二、问题处理

为了明确告诉FreeMarker我要从Map集合中取什么值,在传递数据的时候,通过Map对象的keySet()方法将key值集合一并传递。

${key} ${val}

循环key值集合的时候,通过key值获取Map集合的value内容。 稳妥起见,最好对key值集合和Map集合中取出的值进行一次非Null判断



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3